<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
<!-- qfontmetrics.cpp -->
  <title>Obsolete Members for QFontMetrics | Qt GUI 5.14.2</title>
  <link rel="stylesheet" type="text/css" href="style/offline-simple.css" />
  <script type="text/javascript">
    document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css");
    // loading style sheet breaks anchors that were jumped to before
    // so force jumping to anchor again
    setTimeout(function() {
        var anchor = location.hash;
        // need to jump to different anchor first (e.g. none)
        location.hash = "#";
        setTimeout(function() {
            location.hash = anchor;
        }, 0);
    }, 0);
  </script>
</head>
<body>
<div class="header" id="qtdocheader">
  <div class="main">
    <div class="main-rounded">
      <div class="navigationbar">
        <table><tr>
<td ><a href="../qtdoc/index.html">Qt 5.14</a></td><td ><a href="qtgui-index.html">Qt GUI</a></td><td ><a href="qtgui-module.html">C++ Classes</a></td><td >QFontMetrics</td></tr></table><table class="buildversion"><tr>
<td id="buildversion" width="100%" align="right"><a href="qtgui-index.html">Qt 5.14.2 Reference Documentation</a></td>
        </tr></table>
      </div>
    </div>
<div class="content">
<div class="line">
<div class="content mainContent">
<div class="sidebar"><div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">Obsolete Members for QFontMetrics</h1>
<p><b>The following members of class <a href="qfontmetrics.html">QFontMetrics</a> are obsolete.</b> They are provided to keep old source code working. We strongly advise against using them in new code.</p>
<h2>Public Functions</h2>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft topAlign rightAlign"> <code>(obsolete) </code></td><td class="memItemRight bottomAlign"><b><a href="qfontmetrics-obsolete.html#QFontMetrics-1">QFontMetrics</a></b>(const QFont &amp;<i>font</i>, QPaintDevice *<i>paintdevice</i>)</td></tr>
<tr><td class="memItemLeft topAlign rightAlign"> <code>(obsolete) </code>int </td><td class="memItemRight bottomAlign"><b><a href="qfontmetrics-obsolete.html#charWidth">charWidth</a></b>(const QString &amp;<i>text</i>, int <i>pos</i>) const</td></tr>
<tr><td class="memItemLeft topAlign rightAlign"> <code>(obsolete) </code>int </td><td class="memItemRight bottomAlign"><b><a href="qfontmetrics-obsolete.html#width">width</a></b>(QChar <i>ch</i>) const</td></tr>
<tr><td class="memItemLeft topAlign rightAlign"> <code>(obsolete) </code>int </td><td class="memItemRight bottomAlign"><b><a href="qfontmetrics-obsolete.html#width">width</a></b>(const QString &amp;<i>text</i>, int <i>len</i> = -1) const</td></tr>
</table></div>
<h2>Member Function Documentation</h2>
<!-- $$$QFontMetrics$$$QFontMetricsconstQFont&QPaintDevice* -->
<h3 class="fn" id="QFontMetrics-1"><a name="QFontMetrics-1"></a>QFontMetrics::<span class="name">QFontMetrics</span>(const <span class="type"><a href="qfont.html">QFont</a></span> &amp;<i>font</i>, <span class="type"><a href="qpaintdevice.html">QPaintDevice</a></span> *<i>paintdevice</i>)</h3>
<p>This function is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.</p>
<p>Identical to <a href="qfontmetrics.html">QFontMetrics::QFontMetrics</a>(const <a href="qfont.html">QFont</a> &amp;font, const <a href="qpaintdevice.html">QPaintDevice</a> *paintdevice)</p>
<!-- @@@QFontMetrics -->
<!-- $$$charWidth[overload1]$$$charWidthconstQString&int -->
<h3 class="fn" id="charWidth"><a name="charWidth"></a><span class="type">int</span> QFontMetrics::<span class="name">charWidth</span>(const <span class="type"><a href="../qtcore/qstring.html">QString</a></span> &amp;<i>text</i>, <span class="type">int</span> <i>pos</i>) const</h3>
<p>This function is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.</p>
<p>Returns the width of the character at position <i>pos</i> in the string <i>text</i>.</p>
<p>The whole string is needed, as the glyph drawn may change depending on the context (the letter before and after the current one) for some languages (e.g&#x2e; Arabic).</p>
<p>This function also takes non spacing marks and ligatures into account.</p>
<!-- @@@charWidth -->
<!-- $$$width[overload1]$$$widthQChar -->
<h3 class="fn" id="width"><a name="width"></a><span class="type">int</span> QFontMetrics::<span class="name">width</span>(<span class="type"><a href="../qtcore/qchar.html">QChar</a></span> <i>ch</i>) const</h3>
<p>This function is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.</p>
<p>This is an overloaded function.</p>
<p class="centerAlign"><img src="images/bearings.png" alt="Bearings" /></p><p>Returns the logical width of character <i>ch</i> in pixels. This is a distance appropriate for drawing a subsequent character after <i>ch</i>.</p>
<p>Some of the metrics are described in the image to the right. The central dark rectangles cover the logical width() of each character. The outer pale rectangles cover the <a href="qfontmetrics.html#leftBearing">leftBearing</a>() and <a href="qfontmetrics.html#rightBearing">rightBearing</a>() of each character. Notice that the bearings of &quot;f&quot; in this particular font are both negative, while the bearings of &quot;o&quot; are both positive.</p>
<p><b>Warning:</b> This function will produce incorrect results for Arabic characters or non-spacing marks in the middle of a string, as the glyph shaping and positioning of marks that happens when processing strings cannot be taken into account. When implementing an interactive text control, use <a href="qtextlayout.html">QTextLayout</a> instead.</p>
<p><b>See also </b><a href="qfontmetrics.html#boundingRect">boundingRect</a>() and <a href="qfontmetrics.html#horizontalAdvance">horizontalAdvance</a>().</p>
<!-- @@@width -->
<!-- $$$width[overload1]$$$widthconstQString&int -->
<h3 class="fn" id="width"><a name="width"></a><span class="type">int</span> QFontMetrics::<span class="name">width</span>(const <span class="type"><a href="../qtcore/qstring.html">QString</a></span> &amp;<i>text</i>, <span class="type">int</span> <i>len</i> = -1) const</h3>
<p>This function is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.</p>
<p>Returns the width in pixels of the first <i>len</i> characters of <i>text</i>. If <i>len</i> is negative (the default), the entire string is used.</p>
<p>Note that this value is <i>not</i> equal to <a href="qfontmetrics.html#boundingRect">boundingRect</a>().width(); <a href="qfontmetrics.html#boundingRect">boundingRect</a>() returns a rectangle describing the pixels this string will cover whereas width() returns the distance to where the next string should be drawn.</p>
<p><b>See also </b><a href="qfontmetrics.html#boundingRect">boundingRect</a>() and <a href="qfontmetrics.html#horizontalAdvance">horizontalAdvance</a>().</p>
<!-- @@@width -->
        </div>
       </div>
   </div>
   </div>
</div>
<div class="footer">
   <p>
   <acronym title="Copyright">&copy;</acronym> 2020 The Qt Company Ltd.
   Documentation contributions included herein are the copyrights of
   their respective owners.<br/>    The documentation provided herein is licensed under the terms of the    <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation    License version 1.3</a> as published by the Free Software Foundation.<br/>    Qt and respective logos are trademarks of The Qt Company Ltd.     in Finland and/or other countries worldwide. All other trademarks are property
   of their respective owners. </p>
</div>
</body>
</html>
